package com.ruoyi.oar.service;

import java.util.List;
import java.util.Optional;
import com.ruoyi.oar.domain.dto.OarRoomsDTO;
import com.ruoyi.oar.domain.query.OarRoomsQuery;
import com.ruoyi.common.core.page.TableDataInfo;

/**
 * 房间Service接口
 * 
 * @author ruoyi
 * @date 2022-02-17
 */
public interface OarRoomsService
{
    /**
     * 查询房间
     * 
     * @param id 房间主键
     * @return 房间
     */
    public Optional<OarRoomsDTO> selectOarRoomsById(String id);

    /**
     * 查询房间列表
     * 
     * @param oarRoomsQuery 房间
     * @return 房间集合
     */
    public List<OarRoomsDTO> selectOarRoomsList(OarRoomsQuery oarRoomsQuery);

    /**
     * 分页查询房间列表
     *
     * @param oarRoomsQuery 房间
     * @return 房间集合
     */
    public TableDataInfo<OarRoomsDTO> findAll(OarRoomsQuery oarRoomsQuery);

    /**
     * 新增房间
     * 
     * @param oarRoomsDTO 房间
     * @return 结果
     */
    public int insertOarRooms(OarRoomsDTO oarRoomsDTO);

    /**
     * 修改房间
     * 
     * @param oarRoomsDTO 房间
     * @return 结果
     */
    public int updateOarRooms(OarRoomsDTO oarRoomsDTO);

    /**
     * 批量删除房间
     * 
     * @param ids 需要删除的房间主键集合
     * @return 结果
     */
    public int deleteOarRoomsByIds(String[] ids);

    /**
     * 删除房间信息
     * 
     * @param id 房间主键
     * @return 结果
     */
    public int deleteOarRoomsById(String id);

    /**
     * 根据房屋删除房间
     * @param id
     * @return
     */
    public int deleteOarRoomsByHouseId(String id);

    /**
     * 根据房屋id查询房间
     * @param houseId
     * @return
     */
    public List<OarRoomsDTO>  selectOarRoomsByHouseId(String houseId);

}
